Skip to content

P23: features=coverage (coverage after Tests) - #24

Merged
cedricvogel-leo merged 1 commit into
mainfrom
feature/coverage
Oct 29, 2026
Merged

cedricvogel-leo merged 1 commit into
mainfrom
feature/coverage

Conversation

@cedricvogel-leo

Copy link
Copy Markdown
Collaborator

P23. Depends on glpython-editor#39 (the embed's coverage). Merge after that PR is merged and Pages has deployed.

Merging this one first does no harm: an older embed ignores the unknown coverage in ?features=, and no course lists it yet. The README would just describe something that doesn't happen yet.

Changes

  • coverage is a known name in features=, so it no longer triggers the «Unbekannt in features=» warning, and it is passed on to the embed.
  • It is the one name that a block without features= doesn't get. The erkunden, rezept, pruefung profiles and blocks without options stay unchanged.
  • README «features=»: what coverage shows and its limit (untested code, not wrong code). Nothing is marked in LiaScript's editor; the report gives the line and its code. Profile example @Code.rezept3.
  • examples/profiles.md: a rezept3 slide with:
    • the three reference cases
    • a library as a second file (noten.py)
    • a failing example
    • the same block with rezept

Tested in LiaScript

  • Hosted player in Chrome; this macro and the test course served locally; the embed built from glpython-editor#39.
  • Results on the rezept3 slide, «Tests» on each block:
Block Report
ist_genuegend 2 of 2 · the note on edge cases
bewertung 2 of 2 · «Von keinem Beispiel ausgeführt: Zeile 11: return "ungenügend"»
vorzeichen 2 of 2 · «Zeile 12: return 0»
schnitt + noten.py 1 of 1 · the note (nothing from noten.py)
failing bewertung 1 of 2 · no coverage
bewertung with rezept 2 of 2 · no coverage

check-macro passes.

🤖 Generated with Claude Code

"coverage" in features= switches on glpython-editor's coverage after
Tests: when all examples pass, the report lists the lines of the block's
functions that no example executed, or a neutral note that every line ran
(which doesn't show whether the examples check the edge cases). It is the
one name that a block without features= doesn't get, so existing profiles
and blocks stay as they are. README documents it (with a rezept3 profile
as example); examples/profiles.md has a rezept3 slide with the reference
cases, a library as second file, a failing example and the same block
with rezept.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cedricvogel-leo
cedricvogel-leo merged commit 4432fd5 into main Oct 29, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant